package com.ourteam.product.model.dao;

import net.dao.IDataAccessInterface;


/**
 * Template Name : DAO接口模板
 * Template Version : 1
 * Template Last Modfiy Date : Thu Sep 21 11:14:14 IRKT 2017
 * Auto Generate Date : 2017-11-17 11:00:42
  * Warning ! This file will be overwrite when regenerate !
  *
 */
public interface IBaseProductModelPropertyDAO extends IDataAccessInterface<ProductModelProperty, ProductModelPropertyDAOQueryBean> {
    /**
        *  Mapped Entity Name
        */
    static final String EntityName = "PRODUCT_MODEL_PROPERTY";

    /**
     * Mapped Field ID
    */
    static final String Id = "PRODUCT_MODEL_PROPERTY.ID";

    /**
     * Mapped Field OBJECT_ID
    */
    static final String ObjectId = "PRODUCT_MODEL_PROPERTY.OBJECT_ID";

    /**
     * Mapped Field PROPERTY_CODE
    */
    static final String PropertyCode = "PRODUCT_MODEL_PROPERTY.PROPERTY_CODE";

    /**
     * Mapped Field PROPERTY_NAME
    */
    static final String PropertyName = "PRODUCT_MODEL_PROPERTY.PROPERTY_NAME";

    /**
     * Mapped Field DATA_TYPE_ID
    */
    static final String DataTypeId = "PRODUCT_MODEL_PROPERTY.DATA_TYPE_ID";

    /**
     * Mapped Field DATA_LENGTH
    */
    static final String DataLength = "PRODUCT_MODEL_PROPERTY.DATA_LENGTH";

    /**
     * Mapped Field DATA_ACCURACY
    */
    static final String DataAccuracy = "PRODUCT_MODEL_PROPERTY.DATA_ACCURACY";

    /**
     * Mapped Field IS_ARRAY
    */
    static final String IsArray = "PRODUCT_MODEL_PROPERTY.IS_ARRAY";

    /**
     * Mapped Field IS_ALLOW_NULL
    */
    static final String IsAllowNull = "PRODUCT_MODEL_PROPERTY.IS_ALLOW_NULL";

    /**
     * Mapped Field IS_PRIMARY_KEY
    */
    static final String IsPrimaryKey = "PRODUCT_MODEL_PROPERTY.IS_PRIMARY_KEY";

    /**
     * Mapped Field IS_AUTO_INC
    */
    static final String IsAutoInc = "PRODUCT_MODEL_PROPERTY.IS_AUTO_INC";

    /**
     * Mapped Field SORT_INDEX
    */
    static final String SortIndex = "PRODUCT_MODEL_PROPERTY.SORT_INDEX";

    /**
     * Mapped Field STATUS
    */
    static final String Status = "PRODUCT_MODEL_PROPERTY.STATUS";

    /**
     * Mapped Field REMARKS
    */
    static final String Remarks = "PRODUCT_MODEL_PROPERTY.REMARKS";

    /**
     * Mapped Field DATA_TYPE
    */
    static final String DataType = "PRODUCT_MODEL_PROPERTY.DATA_TYPE";

    /**
     * Mapped Field DEFAULT_VALUE
    */
    static final String DefaultValue = "PRODUCT_MODEL_PROPERTY.DEFAULT_VALUE";

    /**
     * Mapped Field IS_UNIQUE
    */
    static final String IsUnique = "PRODUCT_MODEL_PROPERTY.IS_UNIQUE";

    /**
     * Mapped Field SUBMITTER_ID
    */
    static final String SubmitterId = "PRODUCT_MODEL_PROPERTY.SUBMITTER_ID";

    /**
     * Mapped Field CREATOR_NAME
    */
    static final String CreatorName = "PRODUCT_MODEL_PROPERTY.CREATOR_NAME";

    /**
     * Mapped Field CREATE_TIME
    */
    static final String CreateTime = "PRODUCT_MODEL_PROPERTY.CREATE_TIME";

    /**
     * Mapped Field LAST_MODIFIER_NAME
    */
    static final String LastModifierName = "PRODUCT_MODEL_PROPERTY.LAST_MODIFIER_NAME";

    /**
     * Mapped Field LAST_MODIFY_TIME
    */
    static final String LastModifyTime = "PRODUCT_MODEL_PROPERTY.LAST_MODIFY_TIME";

    /**
     * Mapped Attribute objectName
    */
    static final String ObjectName = org.apache.commons.lang.StringUtils.replace(com.ourteam.product.model.dao.IProductModelObjectDAO.ObjectName,
            com.ourteam.product.model.dao.IProductModelObjectDAO.EntityName +
            ".", "PRODUCT_MODEL_OBJECT.");

    /**
     * Mapped Attribute objectCode
    */
    static final String ObjectCode = org.apache.commons.lang.StringUtils.replace(com.ourteam.product.model.dao.IProductModelObjectDAO.ObjectCode,
            com.ourteam.product.model.dao.IProductModelObjectDAO.EntityName +
            ".", "PRODUCT_MODEL_OBJECT.");

    /**
     * Mapped Attribute objectType
    */
    static final String ObjectType = org.apache.commons.lang.StringUtils.replace(com.ourteam.product.model.dao.IProductModelObjectDAO.ObjectType,
            com.ourteam.product.model.dao.IProductModelObjectDAO.EntityName +
            ".", "PRODUCT_MODEL_OBJECT.");

    /**
     * Delete Data
     * @param final long id
     * @throws Exception
     */
    void delete(final long id) throws Exception;

    /**
         * Find Data By Primary Key
         * @param  final long id
         * @throws Exception
         */
    ProductModelProperty findById(final long id) throws Exception;

    static public interface DataProperty {
        /**
         * Attribute id
         */
        static final String Id = "id";

        /**
         * Attribute objectId
         */
        static final String ObjectId = "objectId";

        /**
         * Attribute propertyCode
         */
        static final String PropertyCode = "propertyCode";

        /**
         * Attribute propertyName
         */
        static final String PropertyName = "propertyName";

        /**
         * Attribute dataTypeId
         */
        static final String DataTypeId = "dataTypeId";

        /**
         * Attribute dataLength
         */
        static final String DataLength = "dataLength";

        /**
         * Attribute dataAccuracy
         */
        static final String DataAccuracy = "dataAccuracy";

        /**
         * Attribute isArray
         */
        static final String IsArray = "isArray";

        /**
         * Attribute isAllowNull
         */
        static final String IsAllowNull = "isAllowNull";

        /**
         * Attribute isPrimaryKey
         */
        static final String IsPrimaryKey = "isPrimaryKey";

        /**
         * Attribute isAutoInc
         */
        static final String IsAutoInc = "isAutoInc";

        /**
         * Attribute sortIndex
         */
        static final String SortIndex = "sortIndex";

        /**
         * Attribute status
         */
        static final String Status = "status";

        /**
         * Attribute remarks
         */
        static final String Remarks = "remarks";

        /**
         * Attribute objectName
         */
        static final String ObjectName = "objectName";

        /**
         * Attribute objectCode
         */
        static final String ObjectCode = "objectCode";

        /**
         * Attribute objectType
         */
        static final String ObjectType = "objectType";

        /**
         * Attribute dataType
         */
        static final String DataType = "dataType";

        /**
         * Attribute defaultValue
         */
        static final String DefaultValue = "defaultValue";

        /**
         * Attribute isUnique
         */
        static final String IsUnique = "isUnique";

        /**
         * Attribute submitterId
         */
        static final String SubmitterId = "submitterId";

        /**
         * Attribute creatorName
         */
        static final String CreatorName = "creatorName";

        /**
         * Attribute createTime
         */
        static final String CreateTime = "createTime";

        /**
         * Attribute lastModifierName
         */
        static final String LastModifierName = "lastModifierName";

        /**
         * Attribute lastModifyTime
         */
        static final String LastModifyTime = "lastModifyTime";
    }

    static public interface _DataObjectProperty extends DataProperty {
    }
}
